package com.prestamomo.vil.ppa.pmvilapi;


import com.prestamomo.vil.ppa.pmvilnet.PmvilResponseModel;

import java.util.List;

import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;

public interface PmvilApi {
    //    String PmvilDuankou = "/v1";
    String PmvilDuankou = "";

    ///ZjLhGQTXahZZsAvJzzo5	/auth/v3.1/user/sendVerifiyCode
    @POST(PmvilDuankou + "/DhlH8L0tX4dldx88xPTL")
    Observable<PmvilResponseModel<PmvilMsgCode>> getPmvilMsgCode(@Body RequestBody pmvilCodeBody);

    ///82ecPSyd5saH8kzbYwa4ZYZ	/auth/v3/user/login
    @POST(PmvilDuankou + "/pLpxlThT")
    Observable<PmvilResponseModel<PmvilLoginBean>> Pmvillogin(@Body RequestBody pmvilLoginBody);

    ///sRBe9cwxSsDyYkFRw1	/api/v3/user/saveAppUserQuestion
    @POST(PmvilDuankou + "/X8hDDdh4Ht")
    Observable<PmvilResponseModel<Boolean>> postPmvilQuest(@Body RequestBody pmvilQuestBody);

    ///SkoLWeqbzrg3WVUVtnRvn	/api/v3/user/queryAppUserQuestion
    @POST(PmvilDuankou + "/DXt4ppLLXL84XD")
    Observable<PmvilResponseModel<List<PmvilQuestion>>> getUserPmvilQuest();

    ///jrtpzbZh2RziC	/api/v3/common/config	Config
    @GET(PmvilDuankou + "/DhHH4HHl4L88h0TDD")
    Observable<PmvilResponseModel<List<PmvilSerConfig>>> getConfigser(@Query("DUNHDNGL") String pmvilCoifnws);

    ///ulhTwZe5vj	/api/v3/common/config/one
    @GET(PmvilDuankou + "/P4DtDHLTxplp")
    Observable<PmvilResponseModel<PmvilSerConfig>> getPmvilConfig(@Query("DUNHDNGL") String pmvilCoifnws);

    ///CrG8u1KJOm8pn6StT	/auth/v3/user/loginOut
    @GET(PmvilDuankou + "/D4lplXpLH44tL")
    Observable<PmvilResponseModel<String>> outPmvilLogin(@Query("DUNHDNGL") String pmvilOutLoginsc);

    ///XqQWzo6bmXRTgofDhoWh9plJ	/api/v5/user/info
//    @POST(PmvilDuankou+"/XqQWzo6bmXRTgofDhoWh9plJ")
//    Observable<PmvilResponseModel<PmvilClient>> getUserPmvilData();
    ///H8pP8TL8l8X8	/api/v3/user/queryCashUser	用户信息
    @POST(PmvilDuankou + "/H8pP8TL8l8X8")
    Observable<PmvilResponseModel<PmvilClient>> getUserPmvilData();

    ///9rn8CqAAskn	/api/v3/userAuth/identitycheck
    @POST(PmvilDuankou + "/x8hdptlld0D0h0LT0x")
    Observable<PmvilResponseModel<PmvilBodys>> postUserPmvilAuth(@Body RequestBody pmvilAuthtBody);

    ///a59W2rSSZ	/api/v5/user/pageNum  todo 未找到
    @POST(PmvilDuankou + "/a59W2rSSZ")
    Observable<PmvilResponseModel<PmvilCheckPage>> getCheckPmvilPage();

    ///Wvig23t62Pdl1	/api/v3/userAuth/silence
    @POST(PmvilDuankou + "/dHlTh8HdXpLtPtT")
    Observable<PmvilResponseModel<Boolean>> postFacePmvilUser(@Body RequestBody pmvilFaceBody);

    ///IVdl3UwBOuFsd	/api/v3/userAuth/ocrCheck
    @POST(PmvilDuankou + "/hlPtpH0LT8t0p")
    Observable<PmvilResponseModel<PmvilUsrOcr>> postUserPmvilOcr(@Body RequestBody pmvilOcrBody);

    ///623CC0acqmJl	/api/v3/userAuth/ocrConfirm
    @POST(PmvilDuankou + "/dd8hTLlPh40dpD")
    Observable<PmvilResponseModel<Boolean>> postInfoPmvilOcr(@Body RequestBody pmvilOcrInfoBody);

    ///txG8U0GIX7pHv	/api/v3/bindCard/list
    @GET(PmvilDuankou + "/p4LldXtH4H")
    Observable<PmvilResponseModel<PmvilBanks>> getBankPmvilList();

    ///Gy1alDSdJQCa	/api/v3/bindCard/bind
    @POST(PmvilDuankou + "/hPllTP0dDLtTDTXPxhLDp")
    Observable<PmvilResponseModel<PmvilBodys>> postBankPmvilInfo(@Body RequestBody pmvilBankInfoBody);

    ///oRWb7hb8DrOkYt1g	/api/v3/loan/confirm
    @POST(PmvilDuankou + "/thhL4tTtHh")
    Observable<PmvilResponseModel<PmvilLanResult>> postApplyPmvilInfo(@Body RequestBody pmvilLoanBody);

    ///ublOXUgXc7	/api/v5/user/orderList
//    @POST(PmvilDuankou+"/ublOXUgXc7")
//    Observable<PmvilResponseModel<PmvilGoods>> getGoodsPmvilList();
    ///ppXp0pPHH8	/api/v3/loan/loanOrderRecord	借款记录
    @POST(PmvilDuankou + "/ppXp0pPHH8")
    Observable<PmvilResponseModel<PmvilGoods>> getGoodsPmvilList(@Body RequestBody pmliclbody);

    ///eLpxvGLr	/api/v5/loan/loanOrderDetail
//    @POST(PmvilDuankou+"/eLpxvGLr")
//    Observable<PmvilResponseModel<PmvilStill>> getStillPmvilInfo(@Body RequestBody pmvilStillBody);
    ///thlxx4tHphTh8d0tpd8ttxt	/api/v3/loan/loanOrderDetail	借款详情
    @POST(PmvilDuankou + "/thlxx4tHphTh8d0tpd8ttxt")
    Observable<PmvilResponseModel<PmvilStill>> getStillPmvilInfo(@Body RequestBody pmvilStillBody);


    ///NpnOjGF3zP	/api/v5/extension/trial
//    @POST(PmvilDuankou+"/NpnOjGF3zP")
//    Observable<PmvilResponseModel<PmvilLeftOver>> getLeftOverPmvilInfo(@Body RequestBody pmvilLeftOverBody);
    ///L0LtDLX0H8tHPd0x8td	/api/v3/extension/trial	展期试算
    @POST(PmvilDuankou + "/L0LtDLX0H8tHPd0x8td")
    Observable<PmvilResponseModel<PmvilLeftOver>> getLeftOverPmvilInfo(@Body RequestBody pmvilLeftOverBody);


    ///ctBzN5sNKaOdXN	/api/v3/repay/channel
    @GET(PmvilDuankou + "/pX8lpttLHDtxPpD")
    Observable<PmvilResponseModel<PmvilRoute>> getRoutePmvilInfo(@Query("DUNHDNGL") String pmvilRepayId);

    ///PhEvne8ccqjIT9wB8vTTc	/api/v3/replan/repay
    @POST(PmvilDuankou + "/lPPlLHLTxPthx4DlLLtDh8")
    Observable<PmvilResponseModel<PmvilStillResult>> comitStillPmvilInfo(@Body RequestBody pmvilStillInfoBody);

    ///1NQ3v8sDh	/api/v3/extension/repay
    @POST(PmvilDuankou + "/X88XHxx44pDd0pHlD")
    Observable<PmvilResponseModel<PmvilStillResult>> comitLeftOverPmvilInfo(@Body RequestBody pmvilLeftInfoBody);

    ///YiqjCGrkXQz2vK9VziRi	/api/v3/user/appList
    @POST(PmvilDuankou + "/4TXdx8px8l0DTxT8T8")
    Observable<PmvilResponseModel<Boolean>> comitAppPmvilInfo(@Body RequestBody pmvilAppInfoBody);

    ///knwyrbyyze4l	/api/v3/user/data/list
    @POST(PmvilDuankou + "/HH8X4tXl0D0")
    Observable<PmvilResponseModel<Boolean>> comitUserPmvilData(@Body RequestBody pmvilUserDataBody);

    ///L5l4O2cyWgqsJ8l	/api/v3/user/deviceInfo
    @POST(PmvilDuankou + "/DhLtLLlxLthXdhdX")
    Observable<PmvilResponseModel<Boolean>> comitDevicePmvilInfo(@Body RequestBody pmvilDeviceInfoBody);

    ///SFr17clAgmianJnRWtgjYkoG	/api/v3/rubbish/interface
    @POST(PmvilDuankou + "/tHPdH0XlDx")
    Observable<PmvilResponseModel<String>> getPmvilLjiswt(@Body RequestBody pmvilDeviceInfoBody);

    ///OUCBZigTLnif1	/api/v3/rubbish/interface
    @POST(PmvilDuankou + "/h4LPxPP8Tx8LttP0d0HLp")
    Observable<PmvilResponseModel<String>> getPmvilPInset(@Body RequestBody pmvilDeviceInfoBody);

    ///aD4nJpOyQO1XJ	/api/v3/rubbish/interface
    @POST(PmvilDuankou + "/TXHtdX0LT0pxDhXDh8XHxT8")
    Observable<PmvilResponseModel<String>> getPmvilThress(@Body RequestBody pmvilDeviceInfoBody);

    ///Dxf50DrIUv9AXGNt7MWK	/api/v3/rubbish/interface
    @POST(PmvilDuankou + "/8t0ldTthxX4xt8")
    Observable<PmvilResponseModel<String>> getPmvilPjkwo(@Body RequestBody pmvilDeviceInfoBody);

    ///DPQjDGta	/api/v3/rubbish/interface
    @POST(PmvilDuankou + "/xhD00T0H4dD0l")
    Observable<PmvilResponseModel<String>> getPmvilKoslw(@Body RequestBody pmvilDeviceInfoBody);

    ///tLP8HDLlHD4tLXX8P8d4	/api/v3/userAuth/queryUserDetail	查询用户认证详情
    @POST(PmvilDuankou + "/tLP8HDLlHD4tLXX8P8d4")
    Observable<PmvilResponseModel<PmvilUserRz>> getPmvilQueryUser();

    ///LTt8pHhp0Hx	/api/v3/loan/checkTips	检查是否需要tips
    @POST(PmvilDuankou + "/LTt8pHhp0Hx")
    Observable<PmvilResponseModel<Boolean>> checkTips();

    ///x4DdhDThTdd84tHHlhPH0xhX	/api/v3/loan/check	借款检查
    @POST(PmvilDuankou + "/x4DdhDThTdd84tHHlhPH0xhX")
    Observable<PmvilResponseModel<PmCheckLoan>> LoanCheck();

    ///pPP8x8HppxlhTdLXXt40l	/api/v3/loan/init	借款信息
    @POST(PmvilDuankou + "/pPP8x8HppxlhTdLXXt40l")
    Observable<PmvilResponseModel<PmInitLoan>> getInitLoan(@Body RequestBody pmvilLeftOverBody);

    ///tDhxXHDPTLt8lLdtD44h	/api/v3/common/adjust	Adjust
    @POST(PmvilDuankou + "/tDhxXHDPTLt8lLdtD44h")
    Observable<PmvilResponseModel<Boolean>> Adjust(@Body RequestBody pmvilLeftOverBody);

    ///xLT0P0TlhhTXHH4xllLT8T	/api/v5/repay/collect	商户收款账号V5
    @POST(PmvilDuankou + "/xLT0P0TlhhTXHH4xllLT8T")
    Observable<PmvilResponseModel<PmSkZnh>> collect(@Body RequestBody pmvilLeftOverBody);
    ///ptXXhTX0X	/api/v5/repay/manual	线下手动还款V5
    @POST(PmvilDuankou + "/ptXXhTX0X")
    Observable<PmvilResponseModel<PmSdoxixEtty>> manual(@Body RequestBody pmvilLeftOverBody);
}
